from pywintypes import com_error
from enum import Enum

def unpack(value):
    if isinstance(value, Enum):
        return value.value
    else:
        return value


def constant(name):
    from win32com.client import constants
    if len(constants.__dicts__) == 0:
        try:
            from win32com.client import DispatchEx
            word = DispatchEx('Word.Application')
        except com_error as e:
            print(f'com_error {com_error} occurred.')
    assert(len(constants.__dicts__) > 0)
    dictionary = constants.__dicts__[0]
    if isinstance(name, str):
        if name in dictionary.keys():
            value = dictionary[name]
        else:
            return None
    else:
        value = name
    return value

class WdSaveOptions(Enum):
    wdDoNotSaveChanges      = constant('wdDoNotSaveChanges')
    wdSaveChanges           = constant('wdSaveChanges')
    wdPromptToSaveChanges   = constant('wdPromptToSaveChanges')


class WdExportFormat(Enum):
    """ 指定用于导出文档的格式。"""
    wdExportFormatPDF = constant('wdExportFormatPDF') # """ 17 将文档导出为 PDF 格式。 """
    wdExportFormatXPS = constant('wdExportFormatXPS') # """ 18	将文档导出为 XML Paper Specification (XPS) 格式。"""

class WdExportOptimizeFor(Enum):
    """ 指定导出文档的分辨率和质量。 """
    wdExportOptimizeForOnScreen = constant('wdExportOptimizeForOnScreen') # """ 1	针对屏幕显示进行导出，质量较差，生成的文件大小较小。"""
    wdExportOptimizeForPrint = constant('wdExportOptimizeForPrint') # """ 0	导出打印，这是较高的质量，并且会导致更大的文件大小。"""

class WdExportRange(Enum):
    """ 指定要导出文档中的多少内容。"""
    wdExportAllDocument = constant('wdExportAllDocument')   # """ 0	导出整个文档。"""
    wdExportCurrentPage = constant('wdExportCurrentPage')   # """ 2	导出当前页。 """
    wdExportFromTo      = constant('wdExportFromTo')        # """ 3	使用起始和结束位置导出某个范围的内容。"""
    wdExportSelection   = constant('wdExportSelection')     # """ 1	导出当前选择的内容。"""

class WdExportItem(Enum):
    """ 指定导出文档时是否带标记。"""
    wdExportDocumentContent     = constant('wdExportDocumentContent')       # """ 0	导出文档时不带标记。"""
    wdExportDocumentWithMarkup  = constant('wdExportDocumentWithMarkup')    # """ 7	导出文档时带标记。"""

class WdExportCreateBookmarks(Enum):
    """ 指定导出文档时包括哪些书签。"""
    wdExportCreateHeadingBookmarks  = constant('wdExportCreateHeadingBookmarks')    # """ 1	在导出的文档中为每个 Microsoft Word 标题创建一个书签，Word 标题只包含主文档和文本框中的标题，不包含页眉、页脚、尾注、脚注或注释中的标题。"""
    wdExportCreateNoBookmarks       = constant('wdExportCreateNoBookmarks')         # """ 0	不在导出的文档中创建书签。"""
    wdExportCreateWordBookmarks     = constant('wdExportCreateWordBookmarks')       # """ 2	在导出的文档中为每个 Word 书签创建一个书签，Word 书签包括除页眉和页脚中所含书签以外的所有书签。"""

class WdOriginalFormat(Enum):
    """ 指定文档格式。 在保存文档时通常使用此枚举。"""
    wdOriginalDocumentFormat    = constant('wdOriginalDocumentFormat')  # """ 1	原始文档格式。"""
    wdPromptUser                = constant('wdPromptUser')              # """ 2	提示用户选择文档格式。"""
    wdWordDocument              = constant('wdPromptUser')              # """ 0	Microsoft Word 文档格式。"""

class WdOpenFormat(Enum):
    """ Specifies the format to use when opening a document. """
    wdOpenFormatAllWord     = constant('wdOpenFormatAllWord')       # """ 6	A Microsoft Word format that is backward compatible with earlier versions of Word. """
    wdOpenFormatAuto        = constant('wdOpenFormatAuto')          # """	0	The existing format."""
    wdOpenFormatDocument    = constant('wdOpenFormatDocument')      # """ 1 Word format."""
    wdOpenFormatEncodedText = constant('wdOpenFormatEncodedText')   # """ 5 Encoded text format."""
    wdOpenFormatRTF         = constant('wdOpenFormatRTF')           # """ 3 Rich text format (RTF)."""
    wdOpenFormatTemplate    = constant('wdOpenFormatTemplate')      # """ 2 As a Word template."""

    @property
    @staticmethod
    def wdOpenFormatText():
        """ 4 Unencoded text format."""
        return constant('wdOpenFormatText')

    @property
    @staticmethod
    def wdOpenFormatOpenDocumentText():
        """ 18 (&H12)	OpenDocument Text format."""
        return constant('wdOpenFormatOpenDocumentText')

    @property
    @staticmethod
    def wdOpenFormatUnicodeText():
        """ 5 Unicode text format."""
        return constant('wdOpenFormatUnicodeText')

    @property
    @staticmethod
    def wdOpenFormatWebPages():
        """ 7 HTML format."""
        return constant('wdOpenFormatWebPages')

    @property
    @staticmethod
    def wdOpenFormatXML():
        """ 8 XML format."""
        return constant('wdOpenFormatXML')

    @property
    @staticmethod
    def wdOpenFormatAllWordTemplates():
        """ 13 Word template format."""
        return constant('wdOpenFormatAllWordTemplates')

    @property
    @staticmethod
    def wdOpenFormatDocument97():
        """ 1 Microsoft Word 97 document format."""
        return constant('wdOpenFormatDocument97')

    @property
    @staticmethod
    def wdOpenFormatTemplate97():
        """ 2 Word 97 template format."""
        return constant('wdOpenFormatTemplate97')

    @property
    @staticmethod
    def wdOpenFormatXMLDocument():
        """ 9 XML document format."""
        return constant('wdOpenFormatXMLDocument')

    @property
    @staticmethod
    def wdOpenFormatXMLDocumentSerialized():
        """ 14 Open XML file format saved as a single XML file."""
        return constant('wdOpenFormatXMLDocumentSerialized')

    @property
    @staticmethod
    def wdOpenFormatXMLDocumentMacroEnabled():
        """ 10 XML document format with macros enabled."""
        return constant('wdOpenFormatXMLDocumentMacroEnabled')

    @property
    @staticmethod
    def wdOpenFormatXMLDocumentMacroEnabledSerialized():
        """ 15 Open XML file format with macros enabled saved as a single XML file."""
        return constant('wdOpenFormatXMLDocumentMacroEnabledSerialized')

    @property
    @staticmethod
    def wdOpenFormatXMLTemplate():
        """ 11 XML template format."""
        return constant('wdOpenFormatXMLTemplate')

    @property
    @staticmethod
    def wdOpenFormatXMLTemplateSerialized():
        """ 16 (&H10)	Open XML template format saved as a XML single file."""
        return constant('wdOpenFormatXMLTemplateSerialized')

    @property
    @staticmethod
    def wdOpenFormatXMLTemplateMacroEnabled():
        """ 12 XML template format with macros enabled."""
        return constant('wdOpenFormatXMLTemplateMacroEnabled')

    @property
    @staticmethod
    def wdOpenFormatXMLTemplateMacroEnabledSerialized():
        """ 17 (&H11)	Open XML template format with macros enabled saved as a single XML file."""
        return constant('wdOpenFormatXMLTemplateMacroEnabledSerialized')

class WdDocumentDirection(Enum):
    """ Specifies the direction to flow the text in a document.  """

    @property
    @staticmethod
    def wdLeftToRight():
        """ 0 Left to right."""
        return constant('wdLeftToRight')

    @property
    @staticmethod
    def wdRightToLeft():
        """ 1 Right to left."""
        return constant('wdRightToLeft')

class WdCollapseDirection(Enum):
    @property
    @staticmethod
    def wdCollapseStart():
        return constant('wdCollapseStart')

    @property
    @staticmethod
    def wdCollapseEnd():
        return constant('wdCollapseEnd')

class WdStatistic(Enum):
    """ 指定要从选定内容或项目返回的统计信息。

    名称	值	说明
    wdStatisticCharacters	3	字符数。
    wdStatisticCharactersWithSpaces	5	包括空格在内的字符数。
    wdStatisticFarEastCharacters	6	亚洲语言字符数。
    wdStatisticLines	1	行数。
    wdStatisticPages	2	页数。
    wdStatisticParagraphs	4	段落数。
    wdStatisticWords	0	单词数。
    """

    @property
    @staticmethod
    def wdStatisticCharacters(self):
        return constant('wdStatisticCharacters')

    @property
    @staticmethod
    def wdStatisticCharactersWithSpaces(self):
        return constant('wdStatisticCharactersWithSpaces')

    @property
    @staticmethod
    def wdStatisticFarEastCharacters(self):
        return constant('wdStatisticFarEastCharacters')

    @property
    @staticmethod
    def wdStatisticLines(self):
        return constant('wdStatisticLines')

    @property
    @staticmethod
    def wdStatisticPages(self):
        return constant('wdStatisticPages')

    @property
    @staticmethod
    def wdStatisticParagraphs(self):
        return constant('wdStatisticParagraphs')

    @property
    @staticmethod
    def wdStatisticWords(self):
        return constant('wdStatisticWords')

class WdMultipleWordConversionsMode(Enum):
    """ """
    @property
    @staticmethod
    def wdHangulToHanja(self):
        return constant('wdHangulToHanja')

    @property
    @staticmethod
    def wdHanjaToHangul(self):
        return constant('wdHanjaToHangul')

class WdBuiltinStyle(Enum):
    """ 指定内置的 Microsoft Word 样式。

        WORD 中的 WDBUILTINSTYLE (枚举)
        名称	                            值	Description
        wdStyleBlockQuotation	            -85	文本块。
        wdStyleBodyText	                    -67	正文文本。
        wdStyleBodyText2	                -81	正文文本 2。
        wdStyleBodyText3	                -82	正文文本 3。
        wdStyleBodyTextFirstIndent	        -78	正文首行缩进。
        wdStyleBodyTextFirstIndent2	        -79	正文首行缩进 2。
        wdStyleBodyTextIndent	            -68	正文文本缩进。
        wdStyleBodyTextIndent2	            -83	正文文本缩进 2。
        wdStyleBodyTextIndent3	            -84	正文文本缩进 3。
        wdStyleBookTitle	                -265	书籍标题。
        wdStyleCaption	                    -35	题注。
        wdStyleClosing	                    -64	结束语。
        wdStyleCommentReference	            -40	批注引用。
        wdStyleCommentText	                -31	批注文字。
        wdStyleDate	                        -77	日期。
        wdStyleDefaultParagraphFont	        -66	默认段落字体。
        wdStyleEmphasis	                    -89	强调。
        wdStyleEndnoteReference	            -43	尾注引用。
        wdStyleEndnoteText	                -44	尾注文本。
        wdStyleEnvelopeAddress	            -37	收信人地址。
        wdStyleEnvelopeReturn	            -38	寄信人地址。
        wdStyleFooter	                    -33	页脚。
        wdStyleFootnoteReference	        -39	脚注引用。
        wdStyleFootnoteText	                -30	脚注文本。
        wdStyleHeader	                    -32	页眉。
        wdStyleHeading1	                    -2	标题 1。
        wdStyleHeading2	                    -3	标题 2。
        wdStyleHeading3	                    -4	标题 3。
        wdStyleHeading4	                    -5	标题 4。
        wdStyleHeading5	                    -6	标题 5。
        wdStyleHeading6	                    -7	标题 6。
        wdStyleHeading7	                    -8	标题 7。
        wdStyleHeading8	                    -9	标题 8。
        wdStyleHeading9	                    -10	标题 9。
        wdStyleHtmlAcronym	                -96	HTML 缩写。
        wdStyleHtmlAddress	                -97	HTML 地址。
        wdStyleHtmlCite	                    -98	HTML 引文。
        wdStyleHtmlCode	                    -99	HTML 代码。
        wdStyleHtmlDfn	                    -100	HTML 定义。
        wdStyleHtmlKbd	                    -101	HTML 键盘。
        wdStyleHtmlNormal	                -95	普通（网站）。
        wdStyleHtmlPre	                    -102	HTML 预设格式。
        wdStyleHtmlSamp	                    -103	HTML 样本。
        wdStyleHtmlTt	                    -104	HTML 打字机。
        wdStyleHtmlVar	                    -105	HTML 变量。
        wdStyleHyperlink	                -86	超链接。
        wdStyleHyperlinkFollowed	        -87	访问过的超链接。
        wdStyleIndex1	                    -11	索引 1。
        wdStyleIndex2	                    -12	索引 2。
        wdStyleIndex3	                    -13	索引 3。
        wdStyleIndex4	                    -14	索引 4。
        wdStyleIndex5	                    -15	索引 5。
        wdStyleIndex6	                    -16	索引 6。
        wdStyleIndex7	                    -17	索引 7。
        wdStyleIndex8	                    -18	索引 8。
        wdStyleIndex9	                    -19	索引 9。
        wdStyleIndexHeading	                -34	索引标题。
        wdStyleIntenseEmphasis	            -262	明显强调。
        wdStyleIntenseQuote	                -182	明显引用。
        wdStyleIntenseReference	            -264	明显参考。
        wdStyleLineNumber	                -41	行号。
        wdStyleList	                        -48	列表。
        wdStyleList2	                    -51	列表 2。
        wdStyleList3	                    -52	列表 3。
        wdStyleList4	                    -53	列表 4。
        wdStyleList5	                    -54	列表 5。
        wdStyleListBullet	                -49	列表项目符号。
        wdStyleListBullet2	                -55	列表项目符号 2。
        wdStyleListBullet3	                -56	列表项目符号 3。
        wdStyleListBullet4	                -57	列表项目符号 4。
        wdStyleListBullet5	                -58	列表项目符号 5。
        wdStyleListContinue	                -69	列表接续。
        wdStyleListContinue2	            -70	列表接续 2。
        wdStyleListContinue3	            -71	列表接续 3。
        wdStyleListContinue4	            -72	列表接续 4。
        wdStyleListContinue5	            -73	列表接续 5。
        wdStyleListNumber	                -50	列表编号。
        wdStyleListNumber2	                -59	列表编号 2。
        wdStyleListNumber3	                -60	列表编号 3。
        wdStyleListNumber4	                -61	列表编号 4。
        wdStyleListNumber5	                -62	列表编号 5。
        wdStyleListParagraph                -180	列出段落。
        wdStyleMacroText	                -46	宏文本。
        wdStyleMessageHeader	            -74	信息标题。
        wdStyleNavPane				        -90	文档结构图。
        wdStyleNormal				        -1	正文。
        wdStyleNormalIndent			        -29	正文缩进。
        wdStyleNormalObject			        -158	正文（应用于对象）。
        wdStyleNormalTable			        -106	正文（在表格中应用）。
        wdStyleNoteHeading			        -80	注释标题。
        wdStylePageNumber			        -42	页码。
        wdStylePlainText			        -91	纯文本。
        wdStyleQuote				        -181	引用。
        wdStyleSalutation			        -76	称呼。
        wdStyleSignature			        -65	签名。
        wdStyleStrong				        -88	要点。
        wdStyleSubtitle				        -75	副标题。
        wdStyleSubtleEmphasis		        -261	不明显强调。
        wdStyleSubtleReference		        -263	不明显参考。
        wdStyleTableColorfulGrid	        -172	彩色网格。
        wdStyleTableColorfulList	        -171	彩色列表。
        wdStyleTableColorfulShading	        -170	彩色底纹。
        wdStyleTableDarkList		        -169	深色列表。
        wdStyleTableLightGrid		        -161	浅色网格。
        wdStyleTableLightGridAccent1		-175	浅色网格强调文字颜色 1。
        wdStyleTableLightList				-160	浅色列表。
        wdStyleTableLightListAccent1		-174	浅色列表强调文字颜色 1。
        wdStyleTableLightShading			-159	浅色底纹。
        wdStyleTableLightShadingAccent1		-173	浅色底纹强调文字颜色 1。
        wdStyleTableMediumGrid1				-166	中间色网格 1。
        wdStyleTableMediumGrid2				-167	中间色网格 2。
        wdStyleTableMediumGrid3				-168	中间色网格 3。
        wdStyleTableMediumList1				-164	中间色列表 1。
        wdStyleTableMediumList1Accent1		-178	中间色列表 1 强调文字颜色 1。
        wdStyleTableMediumList2				-165	中间色列表 2。
        wdStyleTableMediumShading1			-162	中间色底纹 1。
        wdStyleTableMediumShading1Accent1	-176	中间色底纹 1 强调文字颜色 1。
        wdStyleTableMediumShading2			-163	中间色底纹 2。
        wdStyleTableMediumShading2Accent1	-177	中间色底纹 2 强调文字颜色 1。
        wdStyleTableOfAuthorities			-45	引文目录。
        wdStyleTableOfFigures				-36	图表目录。
        wdStyleTitle						-63	标题。
        wdStyleTOAHeading					-47	引文目录标题。
        wdStyleTOC1	                        -20	目录 1。
        wdStyleTOC2	                        -21	目录 2。
        wdStyleTOC3	                        -22	目录 3。
        wdStyleTOC4	                        -23	目录 4。
        wdStyleTOC5	                        -24	目录 5。
        wdStyleTOC6	                        -25	目录 6。
        wdStyleTOC7	                        -26	目录 7。
        wdStyleTOC8	                        -27	目录 8。
        wdStyleTOC9	                        -28	目录 9。
    """
    wdStyleBlockQuotation = constant('wdStyleBlockQuotation')
    wdStyleBodyText = constant('wdStyleBodyText')
    wdStyleBodyText2 = constant('wdStyleBodyText2')
    wdStyleBodyText3 = constant('wdStyleBodyText3')
    wdStyleBodyTextFirstIndent = constant('wdStyleBodyTextFirstIndent')
    wdStyleBodyTextFirstIndent2 = constant('wdStyleBodyTextFirstIndent2')
    wdStyleBodyTextIndent = constant('wdStyleBodyTextIndent')
    wdStyleBodyTextIndent2 = constant('wdStyleBodyTextIndent2')
    wdStyleBodyTextIndent3 = constant('wdStyleBodyTextIndent3')
    wdStyleBookTitle = constant('wdStyleBookTitle')
    wdStyleCaption = constant('wdStyleCaption')
    wdStyleClosing = constant('wdStyleClosing')
    wdStyleCommentReference = constant('wdStyleCommentReference')
    wdStyleCommentText = constant('wdStyleCommentText')
    wdStyleDate = constant('wdStyleDate')
    wdStyleDefaultParagraphFont = constant('wdStyleDefaultParagraphFont')
    wdStyleEmphasis = constant('wdStyleEmphasis')
    wdStyleEndnoteReference = constant('wdStyleEndnoteReference')
    wdStyleEndnoteText = constant('wdStyleEndnoteText')
    wdStyleEnvelopeAddress = constant('wdStyleEnvelopeAddress')
    wdStyleEnvelopeReturn = constant('wdStyleEnvelopeReturn')
    wdStyleFooter = constant('wdStyleFooter')
    wdStyleFootnoteReference = constant('wdStyleFootnoteReference')
    wdStyleFootnoteText = constant('wdStyleFootnoteText')
    wdStyleHeader = constant('wdStyleHeader')
    wdStyleHeading1 = constant('wdStyleHeading1')
    wdStyleHeading2 = constant('wdStyleHeading2')
    wdStyleHeading3 = constant('wdStyleHeading3')
    wdStyleHeading4 = constant('wdStyleHeading4')
    wdStyleHeading5 = constant('wdStyleHeading5')
    wdStyleHeading6 = constant('wdStyleHeading6')
    wdStyleHeading7 = constant('wdStyleHeading7')
    wdStyleHeading8 = constant('wdStyleHeading8')
    wdStyleHeading9 = constant('wdStyleHeading9')
    wdStyleHtmlAcronym = constant('wdStyleHtmlAcronym')
    wdStyleHtmlAddress = constant('wdStyleHtmlAddress')
    wdStyleHtmlCite = constant('wdStyleHtmlCite')
    wdStyleHtmlCode = constant('wdStyleHtmlCode')
    wdStyleHtmlDfn = constant('wdStyleHtmlDfn')
    wdStyleHtmlKbd = constant('wdStyleHtmlKbd')
    wdStyleHtmlNormal = constant('wdStyleHtmlNormal')
    wdStyleHtmlPre = constant('wdStyleHtmlPre')
    wdStyleHtmlSamp = constant('wdStyleHtmlSamp')
    wdStyleHtmlTt = constant('wdStyleHtmlTt')
    wdStyleHtmlVar = constant('wdStyleHtmlVar')
    wdStyleHyperlink = constant('wdStyleHyperlink')
    wdStyleHyperlinkFollowed = constant('wdStyleHyperlinkFollowed')
    wdStyleIndex1 = constant('wdStyleIndex1')
    wdStyleIndex2 = constant('wdStyleIndex2')
    wdStyleIndex3 = constant('wdStyleIndex3')
    wdStyleIndex4 = constant('wdStyleIndex4')
    wdStyleIndex5 = constant('wdStyleIndex5')
    wdStyleIndex6 = constant('wdStyleIndex6')
    wdStyleIndex7 = constant('wdStyleIndex7')
    wdStyleIndex8 = constant('wdStyleIndex8')
    wdStyleIndex9 = constant('wdStyleIndex9')
    wdStyleIndexHeading = constant('wdStyleIndexHeading')
    wdStyleIntenseEmphasis = constant('wdStyleIntenseEmphasis')
    wdStyleIntenseQuote = constant('wdStyleIntenseQuote')
    wdStyleIntenseReference = constant('wdStyleIntenseReference')
    wdStyleLineNumber = constant('wdStyleLineNumber')
    wdStyleList = constant('wdStyleList')
    wdStyleList2 = constant('wdStyleList2')
    wdStyleList3 = constant('wdStyleList3')
    wdStyleList4 = constant('wdStyleList4')
    wdStyleList5 = constant('wdStyleList5')
    wdStyleListBullet = constant('wdStyleListBullet')
    wdStyleListBullet2 = constant('wdStyleListBullet2')
    wdStyleListBullet3 = constant('wdStyleListBullet3')
    wdStyleListBullet4 = constant('wdStyleListBullet4')
    wdStyleListBullet5 = constant('wdStyleListBullet5')
    wdStyleListContinue = constant('wdStyleListContinue')
    wdStyleListContinue2 = constant('wdStyleListContinue2')
    wdStyleListContinue3 = constant('wdStyleListContinue3')
    wdStyleListContinue4 = constant('wdStyleListContinue4')
    wdStyleListContinue5 = constant('wdStyleListContinue5')
    wdStyleListNumber = constant('wdStyleListNumber')
    wdStyleListNumber2 = constant('wdStyleListNumber2')
    wdStyleListNumber3 = constant('wdStyleListNumber3')
    wdStyleListNumber4 = constant('wdStyleListNumber4')
    wdStyleListNumber5 = constant('wdStyleListNumber5')
    wdStyleListParagraph = constant('wdStyleListParagraph')
    wdStyleMacroText = constant('wdStyleMacroText')
    wdStyleMessageHeader = constant('wdStyleMessageHeader')
    wdStyleNavPane = constant('wdStyleNavPane')
    wdStyleNormal = constant('wdStyleNormal')
    wdStyleNormalIndent = constant('wdStyleNormalIndent')
    wdStyleNormalObject = constant('wdStyleNormalObject')
    wdStyleNormalTable = constant('wdStyleNormalTable')
    wdStyleNoteHeading = constant('wdStyleNoteHeading')
    wdStylePageNumber = constant('wdStylePageNumber')
    wdStylePlainText = constant('wdStylePlainText')
    wdStyleQuote = constant('wdStyleQuote')
    wdStyleSalutation = constant('wdStyleSalutation')
    wdStyleSignature = constant('wdStyleSignature')
    wdStyleStrong = constant('wdStyleStrong')
    wdStyleSubtitle = constant('wdStyleSubtitle')
    wdStyleSubtleEmphasis = constant('wdStyleSubtleEmphasis')
    wdStyleSubtleReference = constant('wdStyleSubtleReference')
    wdStyleTableColorfulGrid = constant('wdStyleTableColorfulGrid')
    wdStyleTableColorfulList = constant('wdStyleTableColorfulList')
    wdStyleTableColorfulShading = constant('wdStyleTableColorfulShading')
    wdStyleTableDarkList = constant('wdStyleTableDarkList')
    wdStyleTableLightGrid = constant('wdStyleTableLightGrid')
    wdStyleTableLightGridAccent1 = constant('wdStyleTableLightGridAccent1')
    wdStyleTableLightList = constant('wdStyleTableLightList')
    wdStyleTableLightListAccent1 = constant('wdStyleTableLightListAccent1')
    wdStyleTableLightShading = constant('wdStyleTableLightShading')
    wdStyleTableLightShadingAccent1 = constant('wdStyleTableLightShadingAccent1')
    wdStyleTableMediumGrid1 = constant('wdStyleTableMediumGrid1')
    wdStyleTableMediumGrid2 = constant('wdStyleTableMediumGrid2')
    wdStyleTableMediumGrid3 = constant('wdStyleTableMediumGrid3')
    wdStyleTableMediumList1 = constant('wdStyleTableMediumList1')
    wdStyleTableMediumList1Accent1 = constant('wdStyleTableMediumList1Accent1')
    wdStyleTableMediumList2 = constant('wdStyleTableMediumList2')
    wdStyleTableMediumShading1 = constant('wdStyleTableMediumShading1')
    wdStyleTableMediumShading1Accent1 = constant('wdStyleTableMediumShading1Accent1')
    wdStyleTableMediumShading2 = constant('wdStyleTableMediumShading2')
    wdStyleTableMediumShading2Accent1 = constant('wdStyleTableMediumShading2Accent1')
    wdStyleTableOfAuthorities = constant('wdStyleTableOfAuthorities')
    wdStyleTableOfFigures = constant('wdStyleTableOfFigures')
    wdStyleTitle = constant('wdStyleTitle')
    wdStyleTOAHeading = constant('wdStyleTOAHeading')
    wdStyleTOC1 = constant('wdStyleTOC1')
    wdStyleTOC2 = constant('wdStyleTOC2')
    wdStyleTOC3 = constant('wdStyleTOC3')
    wdStyleTOC4 = constant('wdStyleTOC4')
    wdStyleTOC5 = constant('wdStyleTOC5')
    wdStyleTOC6 = constant('wdStyleTOC6')
    wdStyleTOC7 = constant('wdStyleTOC7')
    wdStyleTOC8 = constant('wdStyleTOC8')
    wdStyleTOC9 = constant('wdStyleTOC9')

class MsoEncoding(Enum):
    """ 指定文档编码 (页或字符集) 供 Web 浏览器在用户查看保存的文档时使用。"""

    @property
    @staticmethod
    def msoEncodingArabic():
        """ 1256 阿拉伯语"""
        return constant('msoEncodingArabic')

    @property
    @staticmethod
    def msoEncodingArabicASMO():
        """ 708 阿拉伯语 ASMO"""
        return constant('msoEncodingArabicASMO')

    @property
    @staticmethod
    def msoEncodingArabicAutoDetect():
        """ 51256 Web 浏览器自动检测要使用的阿拉伯语编码类型。"""
        return constant('msoEncodingArabicAutoDetect')

    @property
    @staticmethod
    def msoEncodingArabicTransparentASMO():
        """ 720 透明阿拉伯语"""
        return constant('msoEncodingArabicTransparentASMO')

    @property
    @staticmethod
    def msoEncodingAutoDetect():
        """ 50001 Web 浏览器自动检测要使用的编码类型。"""
        return constant('msoEncodingAutoDetect')

    @property
    @staticmethod
    def msoEncodingBaltic():
        """ 1257 波罗语"""
        return constant('msoEncodingBaltic')

    @property
    @staticmethod
    def msoEncodingCentralEuropean():
        """ 1250 中欧字符"""
        return constant('msoEncodingCentralEuropean')

    @property
    @staticmethod
    def msoEncodingCyrillic():
        """ 1251 西里尔文"""
        return constant('msoEncodingCyrillic')

    @property
    @staticmethod
    def msoEncodingCyrillicAutoDetect():
        """ 51251 Web 浏览器自动检测要使用的西里尔文编码类型。"""
        return constant('msoEncodingCyrillicAutoDetect')

    @property
    @staticmethod
    def msoEncodingEBCDICArabic():
        """ 20420 扩展的二进制编码小数交换 (EBCDIC) 阿拉伯语"""
        return constant('msoEncodingEBCDICArabic')

    @property
    @staticmethod
    def msoEncodingEBCDICDenmarkNorway():
        """ 20277 在丹麦和挪威使用的 EBCDIC"""
        return constant('msoEncodingEBCDICDenmarkNorway')

    @property
    @staticmethod
    def msoEncodingEBCDICFinlandSweden():
        """ 20278 在芬兰和瑞典使用的 EBCDIC"""
        return constant('msoEncodingEBCDICFinlandSweden')

    @property
    @staticmethod
    def msoEncodingEBCDICFrance():
        """ 20297 法国使用的 EBCDIC"""
        return constant('msoEncodingEBCDICFrance')

    @property
    @staticmethod
    def msoEncodingEBCDICGermany():
        """ 20273 在德国使用的 EBCDIC"""
        return constant('msoEncodingEBCDICGermany')

    @property
    @staticmethod
    def msoEncodingEBCDICGreek():
        """ 20423 在希腊语中使用的 EBCDIC"""
        return constant('msoEncodingEBCDICGreek')

    @property
    @staticmethod
    def msoEncodingEBCDICGreekModern():
        """ 875 用于现代希腊语的 EBCDIC"""
        return constant('msoEncodingEBCDICGreekModern')

    @property
    @staticmethod
    def msoEncodingEBCDICHebrew():
        """ 20424 在希伯来语中使用的 EBCDIC"""
        return constant('msoEncodingEBCDICHebrew')

    @property
    @staticmethod
    def msoEncodingEBCDICIcelandic():
        """ 20871 在冰岛使用的 EBCDIC"""
        return constant('msoEncodingEBCDICIcelandic')

    @property
    @staticmethod
    def msoEncodingEBCDICInternational():
        """ 500 国际 EBCDIC"""
        return constant('msoEncodingEBCDICInternational')

    @property
    @staticmethod
    def msoEncodingEBCDICItaly():
        """ 20280 意大利使用的 EBCDIC"""
        return constant('msoEncodingEBCDICItaly')

    @property
    @staticmethod
    def msoEncodingEBCDICJapaneseKatakanaExtended():
        """ 20290 用于日语片假名的 EBCDIC (扩展)"""
        return constant('msoEncodingEBCDICJapaneseKatakanaExtended')

    @property
    @staticmethod
    def msoEncodingEBCDICJapaneseKatakanaExtendedAndJapanese():
        """ 50930 用于日语片假名的 EBCDIC (扩展) 日语"""
        return constant('msoEncodingEBCDICJapaneseKatakanaExtendedAndJapanese')

    @property
    @staticmethod
    def msoEncodingEBCDICJapaneseLatinExtendedAndJapanese():
        """ 50939 用于日语拉丁语的 EBCDIC (扩展) 日语"""
        return constant('msoEncodingEBCDICJapaneseLatinExtendedAndJapanese')

    @property
    @staticmethod
    def msoEncodingEBCDICKoreanExtended():
        """ 20833 用于朝鲜语的 EBCDIC (扩展)"""
        return constant('msoEncodingEBCDICKoreanExtended')

    @property
    @staticmethod
    def msoEncodingEBCDICKoreanExtendedAndKorean():
        """ 50933 用于朝鲜语和朝鲜语的 EBCDIC (扩展) 朝鲜语"""
        return constant('msoEncodingEBCDICKoreanExtendedAndKorean')

    @property
    @staticmethod
    def msoEncodingEBCDICLatinAmericaSpain():
        """ 20284 用于拉丁美洲和西班牙的 EBCDIC"""
        return constant('msoEncodingEBCDICLatinAmericaSpain')

    @property
    @staticmethod
    def msoEncodingEBCDICMultilingualROECELatin2():
        """ 870 EBCDIC 多语言 ROECE (拉丁语 2)"""
        return constant('msoEncodingEBCDICMultilingualROECELatin2')

    @property
    @staticmethod
    def msoEncodingEBCDICRussian():
        """ 20880 用于俄语的 EBCDIC"""
        return constant('msoEncodingEBCDICRussian')

    @property
    @staticmethod
    def msoEncodingEBCDICSerbianBulg一():
        """ 21025 用于塞尔维亚语和保加利亚语的 EBCDIC"""
        return constant('msoEncodingEBCDICSerbianBulg一')

    @property
    @staticmethod
    def msoEncodingEBCDICSimplifiedChineseExtendedAndSimplifiedChinese():
        """ 50935 用于简体中文和简体中文的 EBCDIC (扩展) 简体中文"""
        return constant('msoEncodingEBCDICSimplifiedChineseExtendedAndSimplifiedChinese')

    @property
    @staticmethod
    def msoEncodingEBCDICThai():
        """ 20838 用于泰语的 EBCDIC"""
        return constant('msoEncodingEBCDICThai')

    @property
    @staticmethod
    def msoEncodingEBCDICTurkish():
        """ 20905 用于土耳其语的 EBCDIC"""
        return constant('msoEncodingEBCDICTurkish')

    @property
    @staticmethod
    def msoEncodingEBCDICTurkishLatin5():
        """ 1026 用于土耳其语和拉丁语 5 (EBCDIC)"""
        return constant('msoEncodingEBCDICTurkishLatin5')

    @property
    @staticmethod
    def msoEncodingEBCDICUnitedKingdom():
        """ 20285 英国使用的 EBCDIC"""
        return constant('msoEncodingEBCDICUnitedKingdom')

    @property
    @staticmethod
    def msoEncodingEBCDICUSCanada():
        """ 37 在美国和加拿大使用的 EBCDIC"""
        return constant('msoEncodingEBCDICUSCanada')

    @property
    @staticmethod
    def msoEncodingEBCDICUSCanadaAndJapanese():
        """ 50931 用于美国和加拿大以及日语的 EBCDIC"""
        return constant('msoEncodingEBCDICUSCanadaAndJapanese')

    @property
    @staticmethod
    def msoEncodingEBCDICUSCanadaAndTraditionalChinese():
        """ 50937 用于美国和加拿大以及繁体中文的 EBCDIC"""
        return constant('msoEncodingEBCDICUSCanadaAndTraditionalChinese')

    @property
    @staticmethod
    def msoEncodingEUCChineseSimplifiedChinese():
        """ 51936 用于中文 (简体) 的 EUC 扩展 Unix 代码"""
        return constant('msoEncodingEUCChineseSimplifiedChinese')

    @property
    @staticmethod
    def msoEncodingEUCJapanese():
        """ 51932 用于日语的 EUC"""
        return constant('msoEncodingEUCJapanese')

    @property
    @staticmethod
    def msoEncodingEUCKorean():
        """ 51949 用于朝鲜语的 EUC"""
        return constant('msoEncodingEUCKorean')

    @property
    @staticmethod
    def msoEncodingEUCWaneseTraditionalChinese():
        """ 51950 用于台湾和繁体中文的 EUC"""
        return constant('msoEncodingEUCWaneseTraditionalChinese')

    @property
    @staticmethod
    def msoEncodingEuropa3():
        """ 29001 Europa"""
        return constant('msoEncodingEuropa3')

    @property
    @staticmethod
    def msoEncodingExtAlphaLowercase():
        """ 21027 扩展的 Alpha 小写形式"""
        return constant('msoEncodingExtAlphaLowercase')

    @property
    @staticmethod
    def msoEncodingGreek():
        """ 1253 希腊语"""
        return constant('msoEncodingGreek')

    @property
    @staticmethod
    def msoEncodingGreekAutoDetect():
        """ 51253 Web 浏览器自动检测要使用的希腊语编码类型。"""
        return constant('msoEncodingGreekAutoDetect')

    @property
    @staticmethod
    def msoEncodingHebrew():
        """ 1255 希伯来语"""
        return constant('msoEncodingHebrew')

    @property
    @staticmethod
    def msoEncodingHZGBSimplifiedChinese():
        """ 52936 简体中文 (HZGB)"""
        return constant('msoEncodingHZGBSimplifiedChinese')

    @property
    @staticmethod
    def msoEncodingIA5German():
        """ 20106 德语 (国际字母号。 5 或 IA5)"""
        return constant('msoEncodingIA5German')

    @property
    @staticmethod
    def msoEncodingIA5IRV():
        """ 20105 IA5 国际参考版本 (IRV)"""
        return constant('msoEncodingIA5IRV')

    @property
    @staticmethod
    def msoEncodingIA5Norwegian():
        """ 20108 用于挪威语的 IA5"""
        return constant('msoEncodingIA5Norwegian')

    @property
    @staticmethod
    def msoEncodingIA5Swedish():
        """ 20107 用于瑞典语的 IA5"""
        return constant('msoEncodingIA5Swedish')

    @property
    @staticmethod
    def msoEncodingISCII在():
        """ 57006 用于阿萨姆语的印度 (ISCII) ISCII 代码"""
        return constant('msoEncodingISCII在')

    @property
    @staticmethod
    def msoEncodingISCIIBengali():
        """ 57003 用于孟加拉语的 ISCII"""
        return constant('msoEncodingISCIIBengali')

    @property
    @staticmethod
    def msoEncodingISCIIDevanagari():
        """ 57002 用于 Devanagari 的 ISCII"""
        return constant('msoEncodingISCIIDevanagari')

    @property
    @staticmethod
    def msoEncodingISCIIGuguati():
        """ 57010 用于 Guatiati 的 ISCII"""
        return constant('msoEncodingISCIIGuguati')

    @property
    @staticmethod
    def msoEncodingISCIIKannada():
        """ 57008 用于卡纳达语的 ISCII"""
        return constant('msoEncodingISCIIKannada')

    @property
    @staticmethod
    def msoEncodingISCIIMalayalam():
        """ 57009 用于马拉雅拉姆语的 ISCII"""
        return constant('msoEncodingISCIIMalayalam')

    @property
    @staticmethod
    def msoEncodingISCIIOr一():
        """ 57007 用于奥里雅的 ISCII"""
        return constant('msoEncodingISCIIOr一')

    @property
    @staticmethod
    def msoEncodingISCIIPunjabi():
        """ 57011 用于旁遮普语的 ISCII"""
        return constant('msoEncodingISCIIPunjabi')

    @property
    @staticmethod
    def msoEncodingISCIITamil():
        """ 57004 用于泰米尔语的 ISCII"""
        return constant('msoEncodingISCIITamil')

    @property
    @staticmethod
    def msoEncodingISCIITelugu():
        """ 57005 用于泰卢固语的 ISCII"""
        return constant('msoEncodingISCIITelugu')

    @property
    @staticmethod
    def msoEncodingISO2022CNSimplifiedChinese():
        """ 50229 用于简体中文的 ISO 2022-CN 编码"""
        return constant('msoEncodingISO2022CNSimplifiedChinese')

    @property
    @staticmethod
    def msoEncodingISO2022CNTraditionalChinese():
        """ 50227 用于繁体中文的 ISO 2022-CN 编码"""
        return constant('msoEncodingISO2022CNTraditionalChinese')

    @property
    @staticmethod
    def msoEncodingISO2022JPJISX02011989():
        """ 50222 ISO 2022-JP"""
        return constant('msoEncodingISO2022JPJISX02011989')

    @property
    @staticmethod
    def msoEncodingISO2022JPJISX02021984():
        """ 50221 ISO 2022-JP"""
        return constant('msoEncodingISO2022JPJISX02021984')

    @property
    @staticmethod
    def msoEncodingISO2022JPNoHalfwidthKatakana():
        """ 50220 没有半角片假名的 ISO 2022-JP"""
        return constant('msoEncodingISO2022JPNoHalfwidthKatakana')

    @property
    @staticmethod
    def msoEncodingISO2022KR():
        """ 50225 ISO 2022-KR"""
        return constant('msoEncodingISO2022KR')

    @property
    @staticmethod
    def msoEncodingISO6937NonSpacingAccent():
        """ 20269 ISO 6937 非空格重音"""
        return constant('msoEncodingISO6937NonSpacingAccent')

    @property
    @staticmethod
    def msoEncodingISO885915Latin9():
        """ 28605 ISO 8859-15（拉丁语 9）"""
        return constant('msoEncodingISO885915Latin9')

    @property
    @staticmethod
    def msoEncodingISO88591Latin1():
        """ 28591 ISO 8859-1 拉丁语 1"""
        return constant('msoEncodingISO88591Latin1')

    @property
    @staticmethod
    def msoEncodingISO88592CentralEurope():
        """ 28592 ISO 8859-2 西欧"""
        return constant('msoEncodingISO88592CentralEurope')

    @property
    @staticmethod
    def msoEncodingISO88593Latin3():
        """ 28593 ISO 8859-3 拉丁语 3"""
        return constant('msoEncodingISO88593Latin3')

    @property
    @staticmethod
    def msoEncodingISO88594Baltic():
        """ 28594 ISO 8859-4 波罗地语"""
        return constant('msoEncodingISO88594Baltic')

    @property
    @staticmethod
    def msoEncodingISO88595Cyrillic():
        """ 28595 ISO 8859-5 西里尔文"""
        return constant('msoEncodingISO88595Cyrillic')

    @property
    @staticmethod
    def msoEncodingISO88596Arabic():
        """ 28596 ISA 8859-6 阿拉伯语"""
        return constant('msoEncodingISO88596Arabic')

    @property
    @staticmethod
    def msoEncodingISO88597Greek():
        """ 28597 ISO 8859-7 希腊语"""
        return constant('msoEncodingISO88597Greek')

    @property
    @staticmethod
    def msoEncodingISO88598Hebrew():
        """ 28598 ISO 8859-8 希伯来语"""
        return constant('msoEncodingISO88598Hebrew')

    @property
    @staticmethod
    def msoEncodingISO88598HebrewLogical():
        """ 38598 ISO 8859-8 希伯来语 (逻辑)"""
        return constant('msoEncodingISO88598HebrewLogical')

    @property
    @staticmethod
    def msoEncodingISO88599Turkish():
        """ 28599 ISO 8859-9 土耳其语"""
        return constant('msoEncodingISO88599Turkish')

    @property
    @staticmethod
    def msoEncodingJapaneseAutoDetect():
        """ 50932 Web 浏览器自动检测要使用的日语编码类型。"""
        return constant('msoEncodingJapaneseAutoDetect')

    @property
    @staticmethod
    def msoEncodingJapaneseShiftJIS():
        """ 932 日语(Shift-JIS)"""
        return constant('msoEncodingJapaneseShiftJIS')

    @property
    @staticmethod
    def msoEncodingKOI8R():
        """ 20866 KOI8-R"""
        return constant('msoEncodingKOI8R')

    @property
    @staticmethod
    def msoEncodingKOI8U():
        """ 21866 K0I8-U"""
        return constant('msoEncodingKOI8U')

    @property
    @staticmethod
    def msoEncodingKorean():
        """ 949 韩语"""
        return constant('msoEncodingKorean')

    @property
    @staticmethod
    def msoEncodingKoreanAutoDetect():
        """ 50949 Web 浏览器自动检测要使用的朝鲜语编码类型。"""
        return constant('msoEncodingKoreanAutoDetect')

    @property
    @staticmethod
    def msoEncodingKoreanJohab():
        """ 1361 朝鲜语 (Johab)"""
        return constant('msoEncodingKoreanJohab')

    @property
    @staticmethod
    def msoEncodingMacArabic():
        """ 10004 Macintosh 阿拉伯语"""
        return constant('msoEncodingMacArabic')

    @property
    @staticmethod
    def msoEncodingMacCroatia():
        """ 10082 Macintosh 克罗地亚语"""
        return constant('msoEncodingMacCroatia')

    @property
    @staticmethod
    def msoEncodingMacCyrillic():
        """ 10007 Macintosh 西里尔文"""
        return constant('msoEncodingMacCyrillic')

    @property
    @staticmethod
    def msoEncodingMacGreek1():
        """ 10006 Macintosh 希腊语"""
        return constant('msoEncodingMacGreek1')

    @property
    @staticmethod
    def msoEncodingMacHebrew():
        """ 10005 Macintosh 希伯来语"""
        return constant('msoEncodingMacHebrew')

    @property
    @staticmethod
    def msoEncodingMacIcelandic():
        """ 10079 Macintosh 冰岛语"""
        return constant('msoEncodingMacIcelandic')

    @property
    @staticmethod
    def msoEncodingMacJapanese():
        """ 10001 Macintosh 日语"""
        return constant('msoEncodingMacJapanese')

    @property
    @staticmethod
    def msoEncodingMacKorean():
        """ 10003 Macintosh 朝鲜语"""
        return constant('msoEncodingMacKorean')

    @property
    @staticmethod
    def msoEncodingMacLatin2():
        """ 10029 Macintosh 拉丁语 2"""
        return constant('msoEncodingMacLatin2')

    @property
    @staticmethod
    def msoEncodingMacRoman():
        """ 10000 Macintosh Roman"""
        return constant('msoEncodingMacRoman')

    @property
    @staticmethod
    def msoEncodingMacRomania():
        """ 10010 Macintosh 罗马尼亚语"""
        return constant('msoEncodingMacRomania')

    @property
    @staticmethod
    def msoEncodingMacSimplifiedChineseGB2312():
        """ 10008 Macintosh 简体中文 (GB 2312)"""
        return constant('msoEncodingMacSimplifiedChineseGB2312')

    @property
    @staticmethod
    def msoEncodingMacTraditionalChineseBig5():
        """ 10002 Macintosh 繁体中文 (大 5)"""
        return constant('msoEncodingMacTraditionalChineseBig5')

    @property
    @staticmethod
    def msoEncodingMacTurkish():
        """ 10081 Macintosh 土耳其语"""
        return constant('msoEncodingMacTurkish')

    @property
    @staticmethod
    def msoEncodingMacUkraine():
        """ 10017 Macintosh 乌克兰语"""
        return constant('msoEncodingMacUkraine')

    @property
    @staticmethod
    def msoEncodingOEMArabic():
        """ 864 用于阿拉伯语的 OEM"""
        return constant('msoEncodingOEMArabic')

    @property
    @staticmethod
    def msoEncodingOEMBaltic():
        """ 775 用于波罗语的 OEM"""
        return constant('msoEncodingOEMBaltic')

    @property
    @staticmethod
    def msoEncodingOEMCanadianFrench():
        """ 863 用于加拿大法语的 OEM"""
        return constant('msoEncodingOEMCanadianFrench')

    @property
    @staticmethod
    def msoEncodingOEMCyrillic():
        """ 855 用于西里尔文的 OEM"""
        return constant('msoEncodingOEMCyrillic')

    @property
    @staticmethod
    def msoEncodingOEMCyrillicII():
        """ 866 用于西里尔文 II 的 OEM"""
        return constant('msoEncodingOEMCyrillicII')

    @property
    @staticmethod
    def msoEncodingOEMGreek437G():
        """ 737 用于希腊语 437G 的 OEM"""
        return constant('msoEncodingOEMGreek437G')

    @property
    @staticmethod
    def msoEncodingOEMHebrew():
        """ 862 用于希伯来语的 OEM"""
        return constant('msoEncodingOEMHebrew')

    @property
    @staticmethod
    def msoEncodingOEMIcelandic():
        """ 861 用于冰岛语的 OEM"""
        return constant('msoEncodingOEMIcelandic')

    @property
    @staticmethod
    def msoEncodingOEMModernGreek():
        """ 869 用于现代希腊语的 OEM"""
        return constant('msoEncodingOEMModernGreek')

    @property
    @staticmethod
    def msoEncodingOEMMultilingualLatinI():
        """ 850 用于多语言拉丁语 I 的 OEM"""
        return constant('msoEncodingOEMMultilingualLatinI')

    @property
    @staticmethod
    def msoEncodingOEMMultilingualLatinII():
        """ 852 用于多语言拉丁语 II 的 OEM"""
        return constant('msoEncodingOEMMultilingualLatinII')

    @property
    @staticmethod
    def msoEncodingOEMNordic():
        """ 865 用于英语的 OEM"""
        return constant('msoEncodingOEMNordic')

    @property
    @staticmethod
    def msoEncodingOEMPortuguese():
        """ 860 用于葡萄牙语的 OEM"""
        return constant('msoEncodingOEMPortuguese')

    @property
    @staticmethod
    def msoEncodingOEMTurkish():
        """ 857 用于土耳其语的 OEM"""
        return constant('msoEncodingOEMTurkish')

    @property
    @staticmethod
    def msoEncodingOEMUnitedStates():
        """ 437 在美国使用的 OEM"""
        return constant('msoEncodingOEMUnitedStates')

    @property
    @staticmethod
    def msoEncodingSimplifiedChineseAutoDetect():
        """ 50936 Web 浏览器自动检测要使用的简体中文编码类型。"""
        return constant('msoEncodingSimplifiedChineseAutoDetect')

    @property
    @staticmethod
    def msoEncodingSimplifiedChineseGB18030():
        """ 54936 简体中文 GB 18030"""
        return constant('msoEncodingSimplifiedChineseGB18030')

    @property
    @staticmethod
    def msoEncodingSimplifiedChineseGBK():
        """ 936 简体中文 GBK"""
        return constant('msoEncodingSimplifiedChineseGBK')

    @property
    @staticmethod
    def msoEncodingT61():
        """ 20261 T61"""
        return constant('msoEncodingT61')

    @property
    @staticmethod
    def msoEncodingWanCNS():
        """ 20000 台湾 CNS"""
        return constant('msoEncodingWanCNS')

    @property
    @staticmethod
    def msoEncodingWanEten():
        """ 20002 台湾 Eten"""
        return constant('msoEncodingWanEten')

    @property
    @staticmethod
    def msoEncoding使用WanCM5550():
        """ 20003 台湾 IBM 5550"""
        return constant('msoEncoding使用WanCM5550')

    @property
    @staticmethod
    def msoEncodingWanTCA():
        """ 20001 台湾 TCA"""
        return constant('msoEncodingWanTCA')

    @property
    @staticmethod
    def msoEncodingWanTeleText():
        """ 20004 台湾电信"""
        return constant('msoEncodingWanTeleText')

    @property
    @staticmethod
    def msoEncodingAngwanWang():
        """ 20005 中国台湾"""
        return constant('msoEncodingAngwanWang')

    @property
    @staticmethod
    def msoEncodingThai():
        """ 874 泰语"""
        return constant('msoEncodingThai')

    @property
    @staticmethod
    def msoEncodingTraditionalChineseAutoDetect():
        """ 50950 Web 浏览器自动检测要使用的繁体中文编码类型。"""
        return constant('msoEncodingTraditionalChineseAutoDetect')

    @property
    @staticmethod
    def msoEncodingTraditionalChineseBig5():
        """ 950 繁体中文大 5"""
        return constant('msoEncodingTraditionalChineseBig5')

    @property
    @staticmethod
    def msoEncodingTurkish():
        """ 1254 土耳其语"""
        return constant('msoEncodingTurkish')

    @property
    @staticmethod
    def msoEncodingUnicodeBigEndian():
        """ 1201 Unicode big endian"""
        return constant('msoEncodingUnicodeBigEndian')

    @property
    @staticmethod
    def msoEncodingUnicodeLittleEndian():
        """ 1200 Unicode little endian"""
        return constant('msoEncodingUnicodeLittleEndian')

    @property
    @staticmethod
    def msoEncodingUSASCII():
        """ 20127 美国 ASCII"""
        return constant('msoEncodingUSASCII')

    @property
    @staticmethod
    def msoEncodingUTF7():
        """ 65000 UTF-7 编码"""
        return constant('msoEncodingUTF7')

    @property
    @staticmethod
    def msoEncodingUTF8():
        """ 65001 UTF-8 编码"""
        return constant('msoEncodingUTF8')

    @property
    @staticmethod
    def msoEncodingVietnamese():
        """ 1258 越南语"""
        return constant('msoEncodingVietnamese')

    @property
    @staticmethod
    def msoEncodingWestern():
        """ 1252 西欧"""
        return constant('msoEncodingWestern')

